//package com.ymatou.payment.testcase;
//
//import java.util.List;
//import java.util.Map;
//
//import org.junit.After;
//import org.junit.AfterClass;
//import org.junit.Before;
//import org.junit.BeforeClass;
//import org.junit.Ignore;
//import org.junit.Test;
//import org.junit.experimental.categories.Category;
//
//import com.ymatou.payment.parameter.CMBNotifyBean;
//import com.ymatou.payment.parameter.CMBSignNotifyBean;
//import com.ymatou.payment.serivce.CMBSignNotifyCall;
//import com.ymatou.payment.serivce.CallbackCall;
//import com.ymatou.payment.serivce.NotifyCall50;
//import com.ymatou.paymentproxy.parameter.AcquireOrderBean;
//import com.ymatou.paymentproxy.parameter.AliPayNotifyBean;
//import com.ymatou.paymentproxy.parameter.AliPayWapCallBackBean;
//import com.ymt.core.tool.FormatUtil;
//import com.ymt.core.tool.Logger;
//import com.ymt.utils.annotation.TestCase;
//import com.ymt.utils.annotation.TestSuite;
//import com.ymt.utils.tag.P1;
//import com.ymt.utils.tag.P3;
//import com.ymttest.business.data.Sign;
//import com.ymttest.business.service.PaymentProxyCallService;
//import com.ymttest.database.model.PPBussinessOrder;
//import com.ymttest.database.model.PPPayment;
//import com.ymttest.database.sqlwapper.PaymentDefaultWapper;
//import com.ymttest.utils.TestDataManager;
//
//
//@TestSuite
//public class Ts_CMBSignNotify {
//	private static CMBSignNotifyBean cmbsnotifyBean;
//	private static CMBSignNotifyCall cmbsnotifyCall;
//
//	@BeforeClass
//	public static void setUp() {
//		Logger.createResultFile("招行签约回调");
//	}
//
//	@Before
//	public void caseUp() {
//		cmbsnotifyBean = new CMBSignNotifyBean();
//		cmbsnotifyCall = new CMBSignNotifyCall();
//	}
//
//	@AfterClass
//	public static void tearDown() {
//		Logger.generateResult(cmbsnotifyCall.getOpurl());
//	}
//
//	@After
//	public void caseDown() {
//		Logger.end();
//	}
//	@Test
//	@Category(P1.class)
//	@TestCase
//	public void Tc_CMBSignNotify_001() {
//		Logger.start(true, "招行签约回调返回成功");
//		try {
//			new PaymentDefaultWapper().deleteCmbAggrementByUId("1");
//			AcquireOrderBean aqb = PaymentProxyCallService.initAcquireOrder("50");
//			aqb.setUserId("1");
//			PaymentProxyCallService.acquireOrder(aqb);
//			cmbsnotifyBean=PaymentProxyCallService.initCMBSignNotifyBean(aqb);
//			String sign=PaymentProxyCallService.SignCMBNoticeData(cmbsnotifyBean.getNoticeData());
//			cmbsnotifyBean.setSign(sign);
//			String send = PaymentProxyCallService.CMBNoticeSendString(cmbsnotifyBean);
////			alinotifyBean = initAliPayNotifyBean(aqb);
////			String send = aliPayNotifyBeanToSend(alinotifyBean,aqb);
//			cmbsnotifyCall.setData(send);
//			cmbsnotifyCall.addHeader("Mock", "1");
//			String mockid = TestDataManager.getRandomUUID().toString();
//			cmbsnotifyCall.addHeader("MockId", mockid);
//
//			Logger.comment("添加Mock:" + mockid);
//			cmbsnotifyCall.callService();
//			Logger.debug(cmbsnotifyCall.getStatusCode());
//			Logger.verifyEquals("success", cmbsnotifyCall.getReturnData(), "验证success");
//			verifyDB(cmbsnotifyBean,"1");
//		} catch (Exception e) {
//			Logger.fail(e);
//		}
//	}
//	@Test
//	@Category(P1.class)
//	@TestCase
//	public void Tc_CMBSignNotify_002() {
//		Logger.start(false, "招行签约回调返回失败");
//		try {
//			new PaymentDefaultWapper().deleteCmbAggrementByUId("3");
//			AcquireOrderBean aqb = PaymentProxyCallService.initAcquireOrder("50");
//			aqb.setUserId("3");
//			PaymentProxyCallService.acquireOrder(aqb);
//			cmbsnotifyBean=PaymentProxyCallService.initCMBSignNotifyBean(aqb);
//			String sign=PaymentProxyCallService.SignCMBNoticeData(cmbsnotifyBean.getNoticeData());
//			cmbsnotifyBean.setSign(sign);
//			String send = PaymentProxyCallService.CMBNoticeSendString(cmbsnotifyBean);
////			alinotifyBean = initAliPayNotifyBean(aqb);
////			String send = aliPayNotifyBeanToSend(alinotifyBean,aqb);
//			cmbsnotifyCall.setData(send);
//			cmbsnotifyCall.addHeader("Mock", "1");
//			String mockid = TestDataManager.getRandomUUID().toString();
//			cmbsnotifyCall.addHeader("MockId", mockid);
//
//			Logger.comment("添加Mock:" + mockid);
//			cmbsnotifyCall.callService();
//			Logger.debug(cmbsnotifyCall.getStatusCode());
//			Logger.verifyEquals("success", cmbsnotifyCall.getReturnData(), "验证success");
//			verifyDB(cmbsnotifyBean,"1");
//		} catch (Exception e) {
//			Logger.fail(e);
//		}
//	}
//
//	/**
//	 * 验证数据
//	 * @param cmbnb
//	 * @param aggStatus 期望签约状态
//	 * @throws InterruptedException
//	 */
//	private void verifyDB(CMBSignNotifyBean cmbnb,String aggStatus) throws InterruptedException {
//		Map m=new PaymentDefaultWapper().selectCmbAggrementByUId(cmbnb.getNoticeData().getUserID()).get(0);
//		Logger.debug(m);
//		Logger.verifyEquals("0", m.get("CancelType").toString(), "验证CancelType");
//		Logger.verifyEquals(cmbnb.getNoticeData().getUserPidType(), m.get("UserPidType").toString(), "验证UserPidType");
//		Logger.verifyEquals(cmbnb.getNoticeData().getNoPwdPay(), m.get("NoPwdPay").toString(), "验证NoPwdPay");
//		Logger.verifyEquals(cmbnb.getNoticeData().getNoticeSerialNo(), m.get("BankSerialNo").toString(), "验证BankSerialNo");
//		Logger.verifyEquals(cmbnb.getNoticeData().getUserID(), m.get("UserId").toString(), "验证UserId");
//		Logger.verifyEquals(cmbnb.getNoticeData().getDateTime(), m.get("SignDateTime").toString(), "验证SignDateTime");
//		Logger.verifyEquals(cmbnb.getNoticeData().getAgrNo(), m.get("AggId").toString(), "验证AggId");
//		Logger.verifyEquals(cmbnb.getNoticeData().getUserPidHash(), m.get("UserPidHash").toString(), "验证UserPidHash");
//		Logger.verifyEquals(aggStatus, m.get("AggStatus").toString(), "验证AggStatus");
//	}
//}